package com.ruoyi.system.service;

import java.util.List;
import java.util.Map;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.system.domain.AlarmType;
import com.ruoyi.system.domain.request.alarmtype.AlarmTypeExistParam;
import com.ruoyi.system.domain.request.alarmtype.AlarmTypeLevelSettingParam;

/**
 * 告警类型Service接口
 * 
 * @author wp
 * @date 2023-08-10
 */
public interface IAlarmTypeService extends IService<AlarmType> {

    public List<AlarmType> selectList(AlarmType alarmType);

    /**
     * 由告警等级获取对应告警类型
     *
     * @param level
     */
    public List<Integer> alarmLevelToAlarmTypeList(Integer level);

    /**
     * 获取用户所属公司的告警类型
     * @return
     */
    public Map<Integer, AlarmType> getUserAlarmTypeMap();

    /**
     * 告警名称校验
     * @param param
     */
    public void checkExistName(AlarmTypeExistParam param);

    /**
     * 告警等级设置
     */
    public void levelSetting(AlarmTypeLevelSettingParam param);

}
